# -*- coding: utf-8 -*-
"""
@time：  2021/05/19  21:11
@Auto：Mr. xingye  993843278
@Company 星野训练营 99384378@qq.com
@Function:读取生成case用例

"""

from common.excel.Excel import get_reader,get_writer
from keywords.webkeys import WEB

class Conf:
    """读取excel用例，做成参数化"""
    def __init__(self,case_path='./lib/cases/电商登录用例.xlsx',result_path='./lib/cases/result-电商登录用例.xlsx'):
        self.reader = get_reader(case_path)
        self.writer = get_writer(case_path, result_path)
        #创建web类关键字对象
        self.web = WEB()
        # 保存所有的数据列表
        self.cases = []
        self.feature = ''
        self.story = ''
        self.getCase()


    def getCase(self):
        # 一个sheet页面一个sheet页面读
        sheetname = self.reader.get_sheets()
        print(sheetname)
        for sheet in sheetname:
            self.feature = sheet
            self.reader.set_sheet(sheet)
            self.writer.set_sheet(sheet)
            lines = self.reader.readline()

            # 记录一个case
            case = []

            # 处理出来每一个数据列表
            for i in range(1, len(lines)):
                # print(lines[i])
                line = lines[i]

                #如果是模块分组
                if len(line[0])>1:
                    self.story = line[0]
                #如果第二例有内容，那么就是case的开始
                elif len(line[1]) > 1:
                    #如果读取到的不是第一个用例组，那么就保存上一个用例到所有用例列表里面
                    #第一次这里不执行，读第二个用例的时候开始读这里的if,然后case置空
                    if i > 2:
                        self.cases.append(case)
                        # 重置，用来存放下一个用例
                        case = []
                    case.append(line)
                else:
                    case.append(line)
            #当一个sheet读完，保存最后一个用例
            self.cases.append(case)
        # for i in range(len(self.cases)):
        #     print(self.cases[i])

conf = Conf()
